package com.info.zhiduoduo.repository.entity.crowdsource;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

import java.io.Serializable;
import java.util.Date;

import io.swagger.annotations.ApiOperation;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * <p>
 * 众包自然人
 * </p>
 *
 * @author bob
 * @since 2019-09-04
 */
@Data
@Accessors(chain = true)
@TableName("zdd_crowdsource")
public class Crowdsource extends Model<Crowdsource> {

    private static final long serialVersionUID = 1L;

    /**
     * 众包自然人id
     */
    @TableId(value = "crowdsourceid", type = IdType.AUTO)
    private Integer crowdsourceid;
    /**
     * 注册手机号
     */
    private String phone;
    /**
     * 微信昵称
     */
    private String nickname;
    /**
     * 微信openid
     */
    private String openid;
    /**
     * 微信unionid
     */
    private String unionid;
    /**
     * 微信头像
     */
    private String avatar;
    /**
     * 性别 0：未知 1：男 2：女
     */
    private Integer sex;
    /**
     * 注册来源 1：微信  2:企业后台 3:导入项目时新建 4:委托发单新建
     */
    private Integer regfrom;
    /**
     * 状态 1注册未绑定手机 2已绑定手机 3冻结
     */
    private Integer state;
    /**
     * 自然人编号(后台生成)
     * 生成估计规则：P+商户号+该商户下最大自然人编号加一
     */
    @TableField("crowdsource_number")
    private String crowdsourceNumber;
    /**
     * 客户提供的身份证正面图片地址
     */
    @TableField("foreign_card_front_url")
    private String foreignCardFrontUrl;
    /**
     * 客户提供的身份证反面图片地址
     */
    @TableField("foreign_card_back_url")
    private String foreignCardBackUrl;
    /**
     * 客户提供的活体视频地址
     */
    @TableField("foreign_video_url")
    private String foreignVideoUrl;
    /**
     * 请求编号
     */
    @TableField("request_no")
    private String requestNo;
    private Date createtime;
    private Date updatetime;

    @TableField(exist = false)
    private int realnameAuth;


    @Override
    protected Serializable pkVal() {
        return this.crowdsourceid;
    }

}
